package com.lyz.myself.mapper;

import com.lyz.myself.pojo.Po.Position;
import com.lyz.myself.pojo.Po.Role;
import com.lyz.myself.pojo.Po.User;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface UserMapper {
    User getUserByCompany(@Param("userName") String userName,@Param("company_id") Integer company_id);
    User getUser(String userName);
    User selectByPrimaryKey(Integer user_id);
    List<Role> getRole(Integer user_id);
    List<Position> getPosition(Integer position_id);
    String getPassword(String userName);
    List<User> getAll();
    /**
     * 查询所有用户的姓名手机号
     */
    List<Map<String,String>> getAllUser(@Param("company_id") Integer company_id);

    /**
     * 查看个人信息
     * @return
     */
    Map<String,String> fidMeInformation(@Param("user_id")Integer user_id,@Param("company_id")Integer company_id);

    /**
     * 单位用户管理
     * @param company_id
     * @return
     */
    List<Map<String,String>> myUser(@Param("company_id") Integer company_id);

    /**
     * 注册用户
     * @param user
     * @return
     */
    Integer insertSelective(User user);

    /**
     * 修改用户信息
     * @param user
     * @return
     */
    Integer updateByPrimaryKeySelective(User user);

    /**
     * 维达绑定crm账号
     * @param map
     * @return
     */
    Integer bindTheUser(Map<String,Object> map);
    /**
     * 通过维达账号判断是否绑定
     * @param vaderName
     * @return
     */
    User findTheUser(@Param("vaderName")String vaderName);


    /**
     * 删除超级管理员
     * @param list
     * @return
     */
    int deleteAdmin(@Param("list") List<Integer> list);

    /**
     * 查询role_id
     * @param  user_id
     * @return
     */
    Map<String,Object> getUserRoleId(@Param("user_id") String user_id);

    /**
     * 解绑维达账号
     * @param userId
     * @return
     */
   String unbundlingUser(@Param("user_id")Integer userId);

}
